﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using SW_SoftBully.Models;
using System.Json;
using log4net;
using SW_SoftBully.Models.ModuloAdministracion.Servicio;
using SW_SoftBully.Models.ModuloAdministracion;
using System.Diagnostics;
using TheBullysStore.Models.ModuloAdministracion.Edificio;
   

namespace SW_SoftBully.Controllers.ModuloAdministracion
{

    public class ServicioController : Controller
    {
        private static ILog log = LogManager.GetLogger(typeof(ServicioController));
        ServicioDAO ServicioDao = new ServicioDAO();
        EdificioFacade edificioFacade = new EdificioFacade();
        public ActionResult Index()
        {
            return View();
        }

        public ActionResult Servicio()
        {
            return View();
        }

        public ActionResult RegistrarServicio()
        {
            return View();
        }

        public ActionResult BuscarServicio()
        {
            return View();
        }

        [HttpPost]
        public JsonResult mantenerServicio(ServicioBean Servicio)
        {

try{
            string mensaje = ServicioDao.mantenerServicio(Servicio);

          
                return Json(new { mensaje });
}
catch (Exception ex)
{

    if (Servicio.accion == 0)
    {
        log.Error(" Eliminar Servicio - GET(EXCEPTION):", ex);
    }


    if (Servicio.accion == 1)
    {
        log.Error(" Registrar Servicio - GET(EXCEPTION):", ex);
    }

    if (Servicio.accion == 2)
    {
        log.Error(" Modificar Servicio - GET(EXCEPTION):", ex);
    }
    
    return Json(new { me = "Ocurrió un error al registrar Horario" });
}        

        }



        [HttpPost]
        public JsonResult buscarServicio(FiltroServicio filtro)
        {


            List<ServicioBean> listaServicio = ServicioDao.buscarServicio(filtro);


            return Json(new { listaServicio });


        }


        public JsonResult cargarEdificios(EdificioBean edificio)
        {
            try
            {
                List<EdificioBean> listaEdificio = edificioFacade.Listaredificio(edificio);
                return Json(new { listaEdificio });
            }
            catch (Exception ex)
            {
                //  log.Error("CargarEdificios - GET(EXCEPTION):", ex);
                return Json(new { listaEdificio = "Ocurrió un error al cargar los Edificios" });
            }

        }

    }
}
